字符串比较

compare()

判断两个字符串在字典序上的大小关系

  • 如果调用者字符串小于参数字符串,则返回值小于 0。
  • 如果调用者字符串等于参数字符串,则返回值等于 0。
  • 如果调用者字符串大于参数字符串,则返回值大于 0。

使用 compare() 函数是比较字符串,与直接使用 <, <=, >, >=, == 和 != 操作符相比,它提供了一种更明确的方式来表达比较逻辑,尤其是在需要根据比较结果执行不同逻辑分支的场合。直接使用比较操作符是比较直观和简洁的方式,适用于大多数需要比较字符串并做出决策的场合。

#include <iostream>
#include <string>
using namespace std;
int main()
{
    string str1,str2;
    cin>>str1>>str2;
    cout<<str1.compare(str2)<<endl;
    return 0;
}

输入

diwguc

aschsdnv

输出

3

比较 strcmp

strcmp 函数用于比较两个 C 风格的字符串(即以 null 结尾的字符数组),并根据字典序返回比较结果。strcmp 函数的原型定义在 <cstring>(在 C 中是 <string.h>)头文件中,其工作方式如下:

  • 如果第一个字符串小于第二个字符串,则返回一个小于 0 的值。
  • 如果两个字符串相等,则返回 0。
  • 如果第一个字符串大于第二个字符串,则返回一个大于 0 的值。

strcmp(s1,s2)

若s1和s2是相同的,则返回0,s1< s2,返回值小于0,若s1>s2,返回值大于0


⬅️ 大小写转换 字符串比较 🏠 00-刷题理模型 ➡️ 详情